#include "BulletCollision/CollisionShapes/btTriangleBuffer.h"
#ifdef __cplusplus
extern "C" {
#endif
btTriangleBuffer* bullet_NewbtTriangleBuffer(){
	btTriangleBuffer* wrap_out = new btTriangleBuffer();
	return wrap_out;
}

void bullet_btTriangleBuffer_clearBuffer(btTriangleBuffer* c_this){
	c_this->clearBuffer();
}

int bullet_btTriangleBuffer_getNumTriangles(btTriangleBuffer* c_this){
	int c_out = c_this->getNumTriangles();
	int wrap_out = (c_out);
	return wrap_out;
}

btTriangle* bullet_btTriangleBuffer_getTriangle(btTriangleBuffer* c_this,int index){
	int c_arg_index=index;
	btTriangle const& c_out = c_this->getTriangle(c_arg_index);
	btTriangle* wrap_out = (btTriangle*)(&c_out);
	return wrap_out;
}

btTriangle* bullet_NewbtTriangle(){
	btTriangle* wrap_out = new btTriangle();
	return wrap_out;
}

int bullet_btTriangle_GetFieldOfM_partId(btTriangle* c_this){
	return (int)(c_this->m_partId);
}

int bullet_btTriangle_GetFieldOfM_triangleIndex(btTriangle* c_this){
	return (int)(c_this->m_triangleIndex);
}

btVector3* bullet_btTriangle_GetFieldOfM_vertex0(btTriangle* c_this){
	return (btVector3*)(&c_this->m_vertex0);
}

btVector3* bullet_btTriangle_GetFieldOfM_vertex1(btTriangle* c_this){
	return (btVector3*)(&c_this->m_vertex1);
}

btVector3* bullet_btTriangle_GetFieldOfM_vertex2(btTriangle* c_this){
	return (btVector3*)(&c_this->m_vertex2);
}

#ifdef __cplusplus
}
#endif
